home *** CD-ROM | disk | FTP | other *** search
/ Amiga Tools 5 / Amiga Tools 5.iso / tools / wb-tools / shellbench / shellbench.install < prev    next >
Text File  |  1996-04-05  |  10KB  |  375 lines

  1. ; *************************************************************************
  2. ; *******************  SHELLBENCH INSTALLATION SCRIPT  ********************
  3. ; *************************************************************************
  4. ;
  5. ; $VER: ShellBench.install 1.3 (5.4.96)
  6. ;
  7. ; Copyright ©1996 Nick Christie
  8. ;
  9. ; *************************************************************************
  10. ;
  11. ; Find out about program version, etc
  12.  
  13. ; get version of SB in distribution
  14. (set vernum-sb (getversion "ShellBench_BGUI"))
  15. (set ver-sb    (/ vernum-sb 65536))
  16. (set rev-sb    (- vernum-sb (* ver-sb 65536) ) )
  17.  
  18. (set @default-dest "")
  19. (set defsbdir "SYS:WBStartup")
  20. (set catsdir "Locale:Catalogs")
  21.  
  22. ; if novice user-level, bump up to average
  23. (if (= 0 @user-level)
  24.     (
  25.     (set @user-level 1)
  26.     (user 1)
  27.     )
  28. )
  29.  
  30. (set old-user-level @user-level)
  31.  
  32. ; ************************************************************************
  33. ; English strings
  34. ; ************************************************************************
  35.  
  36. (set default_lang 1)
  37.  
  38. (set #yes-msg "Yes")
  39.  
  40. (set #no-msg "No")
  41.  
  42. (set #bad-kick-msg "ShellBench requires AmigaOS 2.04 or better!")
  43.  
  44. (set #hello-msg
  45.     (cat
  46.         ("Welcome to ShellBench V%ld.%ld\n\n" ver-sb rev-sb)
  47.         "This script will install ShellBench and "
  48.         "related files on your Amiga.\n\n"
  49.         "You will need to answer a few questions such as "
  50.         "where you would like the program installed.\n\n"
  51.         "If you do not wish to install ShellBench at this time, "
  52.         "select the 'Abort Install' button now. "
  53.     )
  54. )
  55.  
  56. (set #whichsb-msg "Which version of ShellBench would you like to install?")
  57.  
  58. (set #whichsb-help
  59.     (cat
  60.         "Different versions of ShellBench have been provided, "
  61.         "to support two different graphical user interface (GUI) "
  62.         "systems: MUI and BGUI.\n\nYou must already have at least "
  63.         "one of these systems installed on your Amiga in order "
  64.         "to use ShellBench. Neither system has been included in "
  65.         "this package, because they would take up too much space "
  66.         "and are widely available on their own.\n\n"
  67.         "Simply select which of the two systems you have on your "
  68.         "Amiga, or if you have both, which one you prefer. The "
  69.         "Installer will then install the corresponding version of "
  70.         "ShellBench."
  71.     )
  72. )
  73.  
  74. (set #sb-askdir-msg "Please select the directory to install ShellBench in.")
  75.  
  76. (set #sbguide "ShellBench.guide")
  77.  
  78. (set #sbguide-ask-msg
  79.     (cat
  80.         "\nInstall ShellBench documentation?\n\n"
  81.         "(This is an AmigaGuide file, and you will be asked "
  82.         "for the directory in which to install it.)\n\n"
  83.         "I recommend installing this, and reading it too, "
  84.         "so that you know how to utilitise ShellBench to "
  85.         "its fullest."
  86.     )
  87. )
  88.  
  89. (set #sbguide-askdir-msg
  90.     (cat
  91.         "\nPlease select the directory "
  92.         "to install ShellBench.guide in.\n"
  93.     )
  94. )
  95.  
  96. (set #guide-help
  97.     (cat
  98.         "AmigaGuide is the Amiga's standard hypertext format.\n\n"
  99.         "If you have AmigaOS 3.0 or better, you can use MultiView "
  100.         "to read this documentation, otherwise you must use the AmigaGuide "
  101.         "program, which is available on AmiNet and Fred Fish disk #870.\n\n"
  102.         "Both of these viewer programs have a 'search path', a set "
  103.         "of directories they search for AmigaGuide documents. "
  104.         "You should place this guide somewhere in that path."
  105.     )
  106. )
  107.  
  108. (set #locale-msg
  109.     (cat
  110.         "\nShellBench is localized, which means you may use "
  111.         "the program in several different languages. "
  112.         "Please choose your preferred languages.\n"
  113.     )
  114. )
  115.  
  116. (set #locale-help
  117.     (cat
  118.         "These are the languages supported by ShellBench.\n\n"
  119.         "Simply specify the languages you prefer and the "
  120.         "required catalog files will be copied to the "
  121.         "Locale:Catalogs directory.\n\nThis feature is "
  122.         "only available under AmigaOS 2.1 and later."
  123.     )
  124. )
  125.  
  126. (set #bye-msg
  127.     (cat
  128.         "ShellBench has been installed with a standard four-colour "
  129.         "icon. In the Icons directory of the distribution you will "
  130.         "find a number of alternative icons that you may wish to use "
  131.         "instead. You will also find some example ShellBench project "
  132.         "icons there."
  133.     )
  134. )
  135.  
  136. ; ************************************************************************
  137. ; xxxx strings - template for other languages
  138. ; ************************************************************************
  139.  
  140. (if (= @language "xxxx")            ; fill in language name
  141.     (
  142.     (set default_lang x)            ; I will fill this in
  143.  
  144.     (set #yes-msg "Yes")
  145.  
  146.     (set #no-msg "No")
  147.  
  148.     (set #bad-kick-msg "ShellBench requires AmigaOS 2.04 or better!")
  149.  
  150.     (set #hello-msg
  151.         (cat
  152.             ("Welcome to ShellBench V%ld.%ld\n\n" ver-sb rev-sb)
  153.             "This script will install ShellBench and "
  154.             "related files on your Amiga.\n\n"
  155.             "You will need to answer a few questions such as "
  156.             "where you would like the program installed.\n\n"
  157.             "If you do not wish to install ShellBench at this time, "
  158.             "select the 'Abort Install' button now. "
  159.         )
  160.     )
  161.  
  162.     (set #whichsb-msg "Which version of ShellBench would you like to install?")
  163.  
  164.     (set #whichsb-help
  165.         (cat
  166.             "Different versions of ShellBench have been provided, "
  167.             "to support two different graphical user interface (GUI) "
  168.             "systems: MUI and BGUI. You must already have at least "
  169.             "one of these systems installed on your Amiga in order "
  170.             "to use ShellBench. Neither system has been included in "
  171.             "this package, because they would take up too much space "
  172.             "and are widely available on their own.\n"
  173.             "Simply select which of the two systems you have on your "
  174.             "Amiga, or if you have both, which one you prefer. The "
  175.             "Installer will then install the corresponding version of "
  176.             "ShellBench."
  177.         )
  178.     )
  179.  
  180.     (set #sb-askdir-msg "Please select the directory to install ShellBench in.")
  181.  
  182. ; if guide is translated, uncomment second line & fill in language
  183. ;    (set #sbguide "ShellBench.guide")
  184. ;    (set #sbguide "/Guides/xxxx/ShellBench.guide")
  185.  
  186.     (set #sbguide-ask-msg
  187.         (cat
  188.             "\nInstall ShellBench documentation?\n\n"
  189.             "(This is an AmigaGuide file, and you will be asked "
  190.             "for the directory in which to install it.)\n\n"
  191.             "I recommend installing this, and reading it too, "
  192.             "so that you know how to utilitise ShellBench to "
  193.             "its fullest."
  194.         )
  195.     )
  196.  
  197.     (set #sbguide-askdir-msg
  198.         (cat
  199.             "\nPlease select the directory "
  200.             "to install ShellBench.guide in.\n"
  201.         )
  202.     )
  203.  
  204.     (set #guide-help
  205.         (cat
  206.             "AmigaGuide is the Amiga's standard hypertext format.\n\n"
  207.             "If you have AmigaOS 3.0 or better, you can use MultiView "
  208.             "to read this documentation, otherwise you must use the AmigaGuide "
  209.             "program, which is available on AmiNet and Fred Fish disk #870.\n\n"
  210.             "Both of these viewer programs have a 'search path', a set "
  211.             "of directories they search for AmigaGuide documents. "
  212.             "You should place this guide somewhere in that path."
  213.         )
  214.     )
  215.  
  216.     (set #locale-msg
  217.         (cat
  218.             "\nShellBench is localized, which means you may use "
  219.             "the program in several different languages. "
  220.             "Please choose your preferred languages.\n"
  221.         )
  222.     )
  223.  
  224.     (set #locale-help
  225.         (cat
  226.             "These are the languages supported by ShellBench.\n\n"
  227.             "Simply specify the languages you prefer and the "
  228.             "required catalog files will be copied to the "
  229.             "Locale:Catalogs directory.\n\nThis feature is "
  230.             "only available under AmigaOS 2.1 and later."
  231.         )
  232.     )
  233.     ) ; endif xxxx language
  234. )
  235.  
  236. ; ************************************************************************
  237. ; Begin actual installation
  238. ; ************************************************************************
  239.  
  240. ; Check for KickV37 or better
  241.  
  242. (if (< (/ (getversion) 65536) 37)
  243.     (
  244.     (abort #bad-kick-msg)
  245.     )
  246. )
  247.  
  248. ; ------------------------------------------------------------------------
  249. ; Show welcome msg
  250.  
  251. (user 2)
  252. (message #hello-msg)
  253. (user old-user-level)
  254.  
  255. ; ------------------------------------------------------------------------
  256. ; Ask the user which version of ShellBench to install (either
  257. ; ShellBench_MUI or ShellBench_BGUI.
  258.  
  259. (if    (askchoice
  260.         (prompt #whichsb-msg)
  261.         (help #whichsb-help)
  262.         (default 0)
  263.         (choices "BGUI" "MUI")
  264.     )
  265.     ; then
  266.     (
  267.     (set sbexe "ShellBench_MUI")
  268.     )
  269.     ; else
  270.     (
  271.     (set sbexe "ShellBench_BGUI")
  272.     )
  273. )
  274.  
  275. ; ------------------------------------------------------------------------
  276. ; Ask the user where we should install ShellBench and copy the program.
  277.  
  278. (if
  279.     (set sbdir
  280.         (askdir
  281.             (prompt #sb-askdir-msg)
  282.             (help @askdir-help)
  283.             (default defsbdir)
  284.         )
  285.     )
  286.     (
  287.     (copyfiles (source sbexe) (dest sbdir) (newname "ShellBench") (infos))
  288.     (set @default-dest sbdir)
  289.     )
  290. )
  291.  
  292. ; ------------------------------------------------------------------------
  293. ; Install ShellBench.guide. Ask yes/no first, then ask for directory.
  294.  
  295. (set guidedir sbdir)
  296.  
  297. (if (askbool
  298.         (prompt #sbguide-ask-msg)
  299.         (help #guide-help)
  300.         (default 1)
  301.         (choices #yes-msg #no-msg)
  302.     )
  303.     ; then
  304.     (
  305.     (set guidedir
  306.         (askdir
  307.             (prompt #sbguide-askdir-msg)
  308.             (help @askdir-help)
  309.             (default guidedir)
  310.         )
  311.     )
  312.     (copyfiles (source #sbguide) (dest guidedir) (infos) )
  313.     )
  314. )
  315.  
  316. ;------------------------------------------------------------------------
  317. ; install catalog(s)
  318.  
  319. (if (exists "libs:locale.library")
  320.     (
  321.     (if (exists catsdir)
  322.         (
  323.         (user 2)
  324.         (set lang
  325.             (askoptions
  326.                 (prompt #locale-msg)
  327.                 (help #locale-help)
  328.                 (choices
  329.                     "English"
  330.                     "Français"
  331.                     "Italiano"
  332.                 )
  333.                 (default default_lang)
  334.             )
  335.         )
  336.         (user old-user-level)
  337.         (set n 0)
  338.         (while
  339.             (set language
  340.                 (select n
  341.                     "English"
  342.                     "Français"
  343.                     "Italiano"
  344.                     ""
  345.                 )
  346.             )
  347.             (
  348.                 (if (in lang n)
  349.                     (
  350.                     (if (<> 0 n)
  351.                         (
  352.                         (makedir (cat catsdir "/" language))
  353.                         (copyfiles
  354.                             (source (cat "Catalogs/" language "/ShellBench.catalog"))
  355.                             (dest (cat catsdir "/" language))
  356.                         )
  357.                         )
  358.                     )
  359.                     )
  360.                 )
  361.                 (set n (+ n 1))
  362.             )
  363.         ) ; endwhile pick language n
  364.         ) ; endthen
  365.     ) ; endif exists catsdir
  366.     ) ; endthen
  367.  
  368. ) ; endif exists locale lib
  369.  
  370. ;------------------------------------------------------------------------
  371. ; final exit message
  372.  
  373. (exit #bye-msg)
  374.  
  375.